/**
 * 处理navigation中的category数据
 */
import { ALL_CATEGORY_ITEM, CATEGORY_NOMAR_DATA } from '@/constants'
import { getCategory } from '@/api/category'
export default {
  // 定义作用域 可以视为必须添加
  namespaced: true,
  state: () => {
    return {
      /***
       * 1.让categorys初始化数据
       * 2.从服务端获取数据替换初始化数据
       * 3.同时服务端获取的数据保存作为下一次的初始化数据
       */
      categorys: [ALL_CATEGORY_ITEM, ...CATEGORY_NOMAR_DATA]
    }
  },
  mutations: {
    setCategorys(state, newCategorys) {
      state.categorys = [ALL_CATEGORY_ITEM, ...newCategorys]
    }
  },
  actions: {
    async getCategoryData(context) {
      const { categorys } = await getCategory()
      context.commit('setCategorys', categorys)
    }
  }
}
